package com.nnnu.wsnackshop.service;

import com.nnnu.wsnackshop.pojo.dto.AssignPermissionDTO;
import com.nnnu.wsnackshop.pojo.entity.RolePermissions;
import com.baomidou.mybatisplus.extension.service.IService;
import com.nnnu.wsnackshop.pojo.vo.PermissionVO;

import java.util.List;
import java.util.Set;

/**
 * <p>
 * 角色-权限关联 服务类
 * </p>
 *
 * @author zk
 * @since 2025-05-14
 */
public interface IRolePermissionsService extends IService<RolePermissions> {

    /**
     * 获取某角色的权限 ID 列表
     */
    Set<Integer> getPermissionsByRole(Long roleId);

    /** 为角色分配新的权限集（覆盖式） */
    void assignPermissions(AssignPermissionDTO dto);

    List<PermissionVO> listAllPermissions();
}
